package top.continew.admin.generator.model.query;

import lombok.Data;

import io.swagger.v3.oas.annotations.media.Schema;

import top.continew.starter.data.core.annotation.Query;
import top.continew.starter.data.core.enums.QueryType;
import java.io.Serial;
import java.io.Serializable;
import java.time.*;

/**
 * 任务管理查询条件
 *
 * @author jiangjun
 * @since 2025/06/20 17:28
 */
@Data
@Schema(description = "任务管理查询条件")
public class TaskListQuery implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 任务状态
     */
    @Schema(description = "任务状态")
    @Query(type = QueryType.EQ)
    private String taskStatus;

    /**
     * 微信提醒
     */
    @Schema(description = "微信提醒")
    @Query(type = QueryType.EQ)
    private String wxMsgNotice;

    /**
     * 短信通知
     */
    @Schema(description = "短信通知")
    @Query(type = QueryType.EQ)
    private String smsNotice;

    /**
     * 语音提醒
     */
    @Schema(description = "语音提醒")
    @Query(type = QueryType.EQ)
    private String voiceNotice;

    /**
     * 平台
     */
    @Schema(description = "平台")
    @Query(type = QueryType.LIKE)
    private String platformName;

    /**
     * 省区名称
     */
    @Schema(description = "省区名称")
    @Query(type = QueryType.LIKE)
    private String provinceName;

    /**
     * 店铺名称
     */
    @Schema(description = "店铺名称")
    @Query(type = QueryType.LIKE)
    private String shopName;

    /**
     * 挂网公司
     */
    @Schema(description = "挂网公司")
    @Query(type = QueryType.LIKE)
    private String publishCompany;

    /**
     * 品种
     */
    @Schema(description = "品种")
    @Query(type = QueryType.LIKE)
    private String categoryName;

    /**
     * 规格
     */
    @Schema(description = "规格")
    @Query(type = QueryType.LIKE)
    private String spec;

    /**
     * 是否匹配负责人
     */
    @Schema(description = "是否匹配负责人")
    @Query(type = QueryType.EQ)
    private Integer matchHandler;

    /**
     * 导入批次ID
     */
    @Schema(description = "导入批次ID")
    @Query(type = QueryType.EQ)
    private String batchId;
}